STM32F407学习笔记(1)基于hal库,CubeMX以及keil5的基本使用。 您所在的位置:网站首页 keil5 c51和keil5 mdk STM32F407学习笔记(1)基于hal库,CubeMX以及keil5的基本使用。

STM32F407学习笔记(1)基于hal库,CubeMX以及keil5的基本使用。

2022-11-13 14:50| 来源: 网络整理| 查看: 265

前言:自己是大二的一名通信工程专业的小菜鸡,在实验室培训了四次之后,我们目前使用是stm32f407zgt6这块单片机。在为明年的电赛国赛准备着。实验室目前使用的工具是cubemax和keil这两款软件,使用起来较为方便。那么让我们来看看吧。

目录

一、STM32简介

二、CubeMX的基本介绍

三、cube的基本配置:

RCC配置:

调试模式设置:

 时钟树配置:

最后就是文件的配置:

四、keil5的使用(基于hal库)

一、STM32简介

从技术的角度定义:以应用为中心、以计算机技术为基础、软件硬件可裁剪、适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专业计算机系统。

-是“看不见的计算机”,软件和硬件综合体。

我们所使用的这块板子属于嵌入式微控制器:

下面是stm32的命名规则:

下面介绍一下是stm32的开发板资源:

当我们拿到一块板子就要看芯片引脚对应的作用,这块f4有144个引脚,下面为芯片的引脚图。

更多资料可以前往st官网自寻查找STMCU中文官网。

二、CubeMX的基本介绍

它允许用户通过它生成C语言项目(HAL库),包含MCU自带的各种外设初始化程序。

也就是你通过cubemx配置的内容,它会帮助你自动生成代码。

下面是cubemx的主页面。

 

我们首先选择新建mcu项目。

 对于我们经常使用的芯片我们可以点击芯片左边的五角星进行收藏,以便下一次使用的更加的方便,这里我们还是选择stm32f407zgt6,下面这个才是cube的核心

三、cube的基本配置: RCC配置:

   Reset and clock control (RCC)

   时钟配置,控制提供给各模块时钟信号的通断

   旁路模式:无外部晶体起振和功率驱动等的部分电路(不能提供电源),一般用不到。

   晶振模式:(有供电给外部晶振)

这里我们看到芯片上的四个引脚就被占用了,RCC需要占用引脚,上方两个为低速时钟,下方两个为高速时钟。

   上方那个就为芯片的晶振

  晶振

    所谓“晶振”,即“石英晶体”,即“晶振”,它是一种由石英晶体的压电作用引起的高频率振动的电        子器件,是一种被动器件。(可以理解为一种计时器件)

  晶振的主要内容

     晶振频率的变化使得电路工作在一个稳定的频率范围内,这是对集成电路的起振装置,而晶体       振荡则是步调基准,稳定频率,选择频率。几乎任何行业、技术、汽车、数字、电子等行业,       都能使用到它。

调试模式设置:

  注意: 这被配置的两个引脚不能作为GPIO,否则在调试中会出现问题。

   因此建议预先设置好防止之后出现问题。

 

 时钟树配置:

    时钟的理解:

       在内核中,一个时钟便能实现一次加法运算。

       时钟决定着运转的速度

   认识时钟树

 时钟树配置

最后就是文件的配置:

  按这样配就完事了

最后就可以点击右上角的生成code了 

四、keil5的使用(基于hal库)

keil5使用的语言是c语言,所以对于那些c语言没学好的同学们要注意了。当然现在还来得急,

这是一个非常有用的方法,可以查看函数的形参所代表的含义,对于我编写代码有很大的帮助。

注意:

1、我们写代码同样要有一个好的习惯,我们可以将功能分模块些,将函数包装在main函数之外,然后最这个函数进行调用。

2、我们在设置参数时,尽量不要用a,b,n这种,我们可以选择英文加下划线的形式。

3、注释十分的重要,到后面代码一多,不仅别人看不懂,连你自己都看不懂了。

 这期就讲到这里,大部分内容都是按照学长们所给的ppt来讲的,下期再讲按键和gpio吧(下次什么时候更新就不知道了dogo),还是想将自己所学的知识记录在这,另一个方面,可以将知识分享给有需要的人。有不足的地方希望大家可以补充,有错误的地方,大家也可以向我提出,学习求教。第一次些博客,还有很多不熟悉,望谅解。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有